package com.cangshi.permission.entity;

import java.util.Set;

/**
 * 浏览对象
 * Created by Eoly on 2017/4/5.
 */
public interface Subject {

    // 对象登录功能
    String login(Token token);

    // 验证对象证书是否存在
    Boolean isAuthorizationExisted();

    // 生成证书对象
    void buildAuthorizationEntity();

    // 验证对象证书是否合法
    Boolean isAuthorizationLegitimate();

    // 验证对象证书是否生效
    Boolean isAuthorizationWorked();

    // 对象是否有权限访问指定url
    Boolean couldAccessing(String url);

    // 生成用户权限(拒绝访问的url)
    Set<String> makeRoles();

    // 生产token字符串
    String buildAuthorizationToken();

}
